package com.yuncheng.oaApi.mapper;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuncheng.oaApi.entity.OaSpcyJcyFybxd;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yuncheng.vo.CurrentUserVo;
import com.yuncheng.oaApi.vo.OrderItemVo;
import com.yuncheng.oaApi.vo.SpcyJcyBxdVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Description: 检查员费用报销单
 * @Author: yuncheng
 * @Date: 2024-03-01
 * @Version: V1.0
 */
public interface OaSpcyJcyFybxdMapper extends BaseMapper<OaSpcyJcyFybxd> {

    Page<OaSpcyJcyFybxd> selectFybxdPageList(Page<OaSpcyJcyFybxd> page,
                                             @Param("gjz") String gjz,
                                             @Param("userid") String userid,
                                             @Param("bean") OaSpcyJcyFybxd bean,
                                             @Param("orderBean") OrderItemVo orderItemVo);

    Page<SpcyJcyBxdVo> flowJobPage(Page<SpcyJcyBxdVo> page,
                                   @Param("onlyCurrentUser") boolean onlyCurrentUser,
                                   @Param("user") CurrentUserVo user,
                                   @Param("spcyFlowVo") SpcyJcyBxdVo spcyJcyBxdVo);

    Page<SpcyJcyBxdVo> flowJkPage(Page<SpcyJcyBxdVo> page,
                                @Param("onlyCurrentUser") boolean onlyCurrentUser,
                                @Param("user") CurrentUserVo user,
                                @Param("spcyFlowVo") SpcyJcyBxdVo spcyJcyBxdVo);

    List<SpcyJcyBxdVo> flowJkList(
            @Param("onlyCurrentUser") boolean onlyCurrentUser,
            @Param("user") CurrentUserVo user,
            @Param("spcyFlowVo") SpcyJcyBxdVo spcyJcyBxdVo);


    Page<SpcyJcyBxdVo> selectmyyb(Page<SpcyJcyBxdVo> page, @Param("spcyFlowVo") SpcyJcyBxdVo spcyJcyBxdVo);

    Page<SpcyJcyBxdVo> myYbFlowPage(Page<SpcyJcyBxdVo> page,
                                  @Param("onlyCurrentUser") boolean onlyCurrentUser,
                                  @Param("user") CurrentUserVo user,
                                  @Param("spcyFlowVo") SpcyJcyBxdVo spcyJcyBxdVo);






    /** 查询报销单所处状态-通过id */
    String selectFbxdztById(@Param("id") String id);



    /**
     *  根据用户id-查询姓名
     */
    String findRealnameById(@Param("id") String id);

    /** 根据申请事项id-查询费用报销单id */
    String selectIdBySqsxId(@Param("sqsxid") String sqsxid);

}
